F0.01 | F4.22 | F1.01 | |
---|---|---|---|
09:45 | | | |
10:00 | A graph database will improve your users and developers experience. (en) | ||
10:30 | Navigating the landscape of cryptocurrency with microservices and Django (en) | ||
11:00 | Break | ||
11:30 | | ||
12:00 | |||
13:00 | Break | ||
14:00 | | ||
How to implement an open and standardized restful API with Django. (en) | |||
15:00 | | | |
15:30 | |||
16:00 | Break | ||
16:30 | |||
17:00 | How data science benefits from easy-to-use Jupyter applications (en) | ||
17:30 | | ||
18:00 | Room needs to be cleared by 17:55 | ||
19:00 | Linuxwochen Wien Film Festival |
F0.01 | F4.22 | F4.07 | |
---|---|---|---|
10:00 | Building scalable distributed machine learning pipelines with Python (en) | ||
10:30 | Ein Überblick: UI, OOTB-Features, Erweiterung, Anpassung (de) | ||
11:00 | Break | ||
11:30 | | ||
12:00 | Supervised learning is great — it’s data collection that’s broken (en) | | |
13:00 | Break | ||
14:00 | | ||
14:15 | | ||
14:30 | | ||
14:45 | |||
15:00 | or: Keep your hands away from the console (en) | ||
16:00 | Break | ||
16:30 | Insights of 12 years of teaching Python to children of all ages (en) | | |
17:00 | | ||
17:15 | | ||
17:30 | Collaborative Cleanup | ||
18:00 | We need to leave the cleaned-up venue by 18:00 | ||
19:00 | Social event |
The best time to talk with speakers and attendees
A lot of open source maintainers suffer from having to maintain the flood of incoming issues/tikets on their project. We've scraped more than 10000 GitHub projects and interviewed more than 100 software developers and project managers of companies like GitLab. As a result, we have identified a few simple steps that can help managing the load of issues. This talk sums up the steps and approaches needed to deal with this as well as automate it.
Lasse Schuirmann Developer Relations Program Manager, GitMate
After freetime-founding the coala analyzer OS project with more than 300 contributors, Lasse mentored multiple GSoC students and administers several organisations solely this year. He also forges high quality software and conducts talks and workshops for his clients/at conferences around the world and founds GitMate.
Now you have your database model representing all objects and relations between them. How do you track changes and updates in order to be able to reproduce the status quo at any point in the history? And how do you write your admin tool in Python and psycopg2 in order to avoid concurrent updates and commit all updates within distinct revisions?
Most AI systems today rely on supervised learning: you provide labelled input and output pairs, and get a program that can perform analogous computation for new data. This allows an approach to software engineering Andrej Karpathy has termed 'Software 2.0': programming by example data. This is the machine learning revolution that's already here, which we need to be careful to distinguish from more futuristic visions such as Artificial General Intelligence. If 'Software 2.0' is driven by example data, how is that example data created – and how can we make that process better?
Ines Montani Lead Developer, Explosion AI
Ines is a developer specialising in applications for AI technology. She's the co-founder of Explosion AI and a core developer of spaCy, the leading open-source library for Natural Language Processing in Python and Prodigy, an annotation tool for radically efficient machine teaching.
Unicode is important. We want to enable people to use characters of all scripts within a single string of text. Without any doubt, this is a tough challenge and 30 years later we still experience issues. Python used a backwards incompatible change to review its Unicode model. In this talk, I want to discuss this model and raise awareness for Unicode issues.
Lukas Prokop Independent developer,
My name is Lukas. I am a former CS student und current mathematics student. Also currently, I am an independent software developer specialising in python, Go and rust. My homebase is in Graz and I am speaking German and English fluently. I am trying to improve my Japanese, French and Spanish. Special interest in digital typography and typesetting. I love FLOSS and organize the Grazer Linuxtage [happening one week before PyDays Vienna]. I like Aikidō and I am a Donald Knuth fanboy.
Das CMS Plone gilt als eines der sichersten CMS am Markt. In seinen über 15 Jahren es sich mehrfach neu erfunden. Der Vortrag gibt einen Überblick über die Merkmale, die Community, beliebte Erweiterungen und Möglichkeiten Plone zu selber zu erweitern und anzupassen.
Jens W. Klein Developer, Klein & Partner KG
Jens Klein programmierte schon im jungen Alter von 10 auf einem ZX81 Basic und Assembler. Während seiner Schulzeit lernte er Pascal. Im Laufe der Jahre kamen weitere Programmiersprachen wie u.a. C/C++, Java, Perl, PHP hinzu. 1996 während des Informatikstudiums an der FH-Furtwangen kam er mit OpenSource Software und Linux in Berührung. In diese Zeit fällt auch die Gründung Depenau/Klein GbR im Bereich Design und Umsetzung von dynamischen Webseiten mit PHP oder Java. Seit 2003 programmiert Jens mit der Sprache Python, die er durch den Applikationsserver ZOPE und das CMS Plone kennen und zu schätzen lernte. Python wurde seine Haupt-Programmiersprache und Jens wurde Plone-Kernentwickler. In den letzten Jahren spielt das Webframework Pyramid eine zunehmend wichtigere Rolle.
We will start with a few best practises for unit testing followed by an interactive, hands-on tour through the main features of Python unit testing framework(s). You will learn while writing tests. Make sure to bring your computer with Python and your editor installed.
Peter Kofler , Code Cop
Peter Kofler is a software developer since many years and still enthusiastic about writing code. He likes his code being in order. Obviously he is fanatic about code quality. After years of harassing his colleagues with clean code and daily build, he was officially appointed 'Code Cop' in 2006. He helps teams of Software Developers to raise the quality of their work and improve their productivity. He regularly facilitates Coding Dojos and Code Retreats.
This talk introduces a method to create a generic Python client for web applications using WADL, a REST API description format. Some interesting techniques will be discussed including handling XML schemas and building Python method dynamically.
Duc-Hung Le Developer, TTTech
I worked 4 years with Java on some research projects at TU Wien. Python becomes the main language since I started the new job at TTTech Computertechnik 1.5 years ago.
Does your code smell? Have a weird fragrance? It turns out code smells are a real thing and an amazing conceptualization of suboptimal design. This talk helps you develop you code nose through identifying Python code smells. It also shows you how to wash them away by the technique of refactoring. You will learn the art of writing Pythonic, clean and maintainable code.
Yenny Cheung Full-Stack Software Engineer, Yelp
Yenny is a full-stack software engineer at Yelp in Hamburg. She is on the Biz National team, where she is scaling advertising tools and reporting for national businesses. She speaks about pythonic refactoring at various conferences and podcasts.
What makes a good developer? Certainly technical expertise, insightfulness, creativity, thoughtfulness. What about daily social interactions with other developers inside the company and community? Those aren't always easy. Even though we all try to be nice and polite to each other, sometimes unintentionally we can come off as rude or ignorant. I'd like to share with you some stories that helped me rationalise some of my own communication and human interaction mistakes and how I'm trying to correct them.
Python provides powerful libraries like nltk, gensim and SpaCy to analyze data natural language data. Out of the box English is well supported but for other languages like German additional steps are necessary to get reasonable results. This talk shares the experiences and challenges in analyzing gastronomy feedback collected with the TeLLers application.
Thomas Aglassinger Software Engineer, TeLLers
Thomas Aglassinger is a software engineer and open source software enthusiast and co-host of the PyGRAZ Python user group in Graz. His professional experience includes developing medical workflow applications and business intelligence in finance. He holds a master's degree in information processing science.
The declarative language of QML makes it easy to design aesthetically looking user interfaces - including animations, and encourages reusability of components. Now, when you have your beautiful and elegant UI you start developing your backend. So should you forget everything you learned about highly readable code and dynamic interconnections because you are constrained by C++? No, I will show you how to bridge QML with Python, to get the best of both worlds. My practical example is a 'Smart Mirror', made entirely with QML and PyQt. This features a weather service plugin in Python, which makes use of Asynchronous I/O and coroutines. And integration with a smart home system in just a few lines of code. And then there's face recognition, Google Assistant and Slack also available.... - with more modules just a few lines of code away. You can look at all of the open source examples for yourself.
Lukas Hetzenecker ,
Imagine you have some streaming computations running on a server. Client programs subscribe to real-time updates, so that they may visualise the computations for end users. How do you share this constantly changing server state with all connected clients? Sending an entire snapshot after each change is very inefficient, so you must implement some sort of incremental updates – diffs. But how do you generate these diffs on the server? And how do you represent them so the clients know how to apply them to update their own state? We have been working on these problems for a long time while building a stock trading platform in Python. I'd like to show you an open source library that we developed for this purpose, and share our experience with tracking state and propagating it to user interfaces running in other processes.
Vita Smid CTO, Quantlane
I am the CTO at Quantlane where we trade stocks using Python 3. I like asyncio, Scotch whisky, type hinting, and motorbikes.
This talk is about how new technologies - containers and Kubernetes - are changing the lifecycle of the Python apps. Topics to cover: Building python container images. S2I vs. custom Docker image vs. buildah Deploying apps to Openshift using ansible Update strategies - integration testing, promoting an image across environment, blue/green deployment strategy using Jenkins Pipelines Monitoring and logging Scaling the application with the load
Vadim Rutkovsky Software Engineer, Red Hat
Software Engineer at Red Hat Czech, keen on CI, DevOps and all things working on Python
After a brief introduction to blockchain and cryptocurrency technologies in general, we describe our reasons for upgrading from PHP to Python for the backend at Bitpanda, an Austrian cryptocurrency startup. We then highlight components of our current stack, and discuss the utility of modelling blockchain protocols and clients as objects. Finally, we discuss key unsolved issues in the blockchain landscape, such as the calculation of optimal transaction fees, and draw attention to a Hackathon that we hope can generate high-quality open-source solutions to this problem.
Daniel McDonald Developer, Bitpanda GmbH
I'm Australian by birth, moved to Vienna for the love of crypto. My background and training is in linguistics, plus self-taught Python. I've got a PhD from the University of Melbourne in computational linguistics, and am a certified software carpentry instructor, having hosted Python workshops and training sessions in Australia and Germany.
The default settings of some libraries and tools are so useless, or even dangerous, that they should never be used. While they give the impression of being easy to use or performant, they actually represent traps for the unwary user. I will show the concrete problems caused by such defaults, and explore how to create tools with good defaults.
Rae Knowler ,
Rae Knowler is a web developer in Zürich, where they develop product data APIs and work on Open Data projects. They are interested in the fascinating, comical and sometimes tragic results of attempting to cram the complexity of life and society into computer systems. In their spare time they read a lot of science fiction and hug cats.
Jupyter Notebooks as web app for data science? This talk will demonstrate that Jupyter is more than simply a pretty version of your code without any real debugging functionality. We will give an insight on how a biotech - data science company can leverage Jupyter as a platform to develop innovative, easy-to-use data science web apps; collaboratively, and quickly.
Barbara Pretzner Data Scientist / developer, Exputec
I'm a Data Scientist / developer at Exputec. Exputec provides a software (mainly written in Python) called inCyght, which includes bioprocess data management and data visualization. I graduated in Biotechnology at BOKU, but have an IT background as well (HTL Rennweg).
In my aerospace engineering research department of about 15 people, a large amount of different software packages/programming languages were in use. This led to inefficiencies and lack of redundancy. I will speak about my experience and lessons learned during an effort to reduce the amount of different solutions used and to unite the department in using Python for as many tasks as reasonable, from data analysis and modelling to control of experiments and facilities.
Christoph Buchner ,
Physicist with a keen interest in programming who is working in applied research in aerospace engineering.
One of the pillars of science is reproducibility. If a paper is published, peers need to be able to review and reenact the research and should come to the same conclusions. Data science can be defined as the application of the scientific method to business data. Regardless of the circumstances, if you try to answer the same question using the same techniques and data, your answer shouldn’t change over time. There are a number of ways to achieve reproducibility, some are organisational, some are more technical. In this talk, we want to present why Python’s virtual environments are useful to that end, how to set them up, and when to use the various containerisation / environment tools to foster reproducibility.
Clemens Zauchner Data Scientist, Unbelievable Machine Company
Studied business informatics in Innsbruck and data science in London. Worked with companies like OMV, easyJet, and Sainsbury’s. Currently Data Scientist @ The Unbelievable Machine Company. Co-author of open source R package tableHTML, a tool to create and style HTML tables from R.
Machine Learning on Source Code (MLonCode) is an emerging and exciting domain of research which stands at the sweet spot between deep learning, natural language processing, social science and programming. The list of MLonCode resources - awesome-machine-learning-on-source-code - has already attracted more than 1,700 watchers on GitHub. I will summarize the current research subdomains in MLonCode, such as identifier and structural embeddings, programming language modeling, automated programming language evolution and source code topic modeling and exploratory search. I will also describe the open MLonCode toolbox from source{d} based on PySpark: sourced.engine and sourced.ml. It provides an in-depth set of Python APIs and command line applications which is already being used for various production tasks. Finally, I will show how to apply that toolbox to analyze all world's Python open source code and mine gems.
Vadim Markovtsev Google Developer Expert, source{d}
Vadim is a Google Developer Expert in Machine Learning and a Lead Machine Learning Engineer at source{d} where he works with 'big code' and natural languages. His academic background is compiler technologies and system programming. He is an open source zealot and an open data knight. Also has a few papers.
Writing applications is usually only the first part. The application has to be deployed and depending on where it is run, infrastructure has to be maintained. Manually configuring your servers and changing configuration is a daunting and error-prone task. This is the point where Ansible comes into play. It allows you to describe the whole configuration of your servers as simple text files and then apply the configuration to all of them. In this talk we will look at how to deploy applications to your servers without having to worry that everything will fall apart as soon as you look away.
Florian Apolloner , CRYPTAS it-Security GmbH
Have you ever been struggling with an nth obscure project, thinking : “I could do the job with this language but why not switch to another one which would be more enjoyable to work with” ? Based on GitHub repositories, it is possible to build a transition matrix by solving the flow optimization problem. The results reflect the history of programming language competition in the open source world.
Waren Long Software Engineer, source{d}
Currently, software engineer at source{d} in Madrid, I aim building useful tools to help developers program better and more efficiently by applying machine learning on their own code. As a Python fan, I am convinced this language will keep on going stronger in the future especially among Data Scientists. In the past, I first spent 3 years studying chemistry at university in Paris for then continuing in applied mathematics where I tuned into optimization theory.
As we lead more and more of our lives online, the world of technology is getting interleaved with real-world problems. Social networks and fake news are used to manipulate voters, troll-bots deployed to disrupt democratic processes, large DDoS attacks used as modern-day warfare… How can we as a society defend against such methods? In this talk we will go over these modern-day battlegrounds and see if there is a way to help make some things right using Python.
In the field of image classification, algorithms are trained to properly label images. What if we actually wanted to fool an algorithm into misclassifying an image? We will walk through methods to perturbate an image (single pixels, patterns, noise) in such ways that it is still recognizable for the human eyes, but is not properly classified by a trained classificationmodel anymore once it has been perturbated.
Lucia Gjeltema ,
She is leading the data science dept.of a company in Linz, Austria. Her interests include open source tools like Python and R, applied to social issues.
Python offers multiple tools that make integration of Web Sockets a piece of cake. This talk showcases code and concepts of using web sockets in most used Python Web frameworks: Tornado and Django.
This talk explores how we, at KardioMe, build computer vision systems that help reducing waste in industrial production. We will first have a look at wrapping of C++ interfaces of industrial cameras in Cython. We will then explore development machine learning models that are able to interpret the image content, and detect failures early. Writing reusable modules in libraries with dynamic code execution (like Gluon) can make such task much simpler.
Training machine learning models to fulfil a business need is becoming increasingly common. At The MoonVision GmbH we built our training api and machine learning models using python. This talk will present how we are able to train machine learning models through an API in a robust, scaleable manner while using almost exclusively python.
Our most popular product is an automated energy trading solution: a bot, written in Python, trading 24/7 at various European power and gas exchanges. Furthermore, the solution allows our customers to develop their own trading algorithms. However, the lack of a realistic testing environment prevents the performance analysis of these trading algorithms. In particular, how can we know how the market would react to trades executed by our bot, without actually trading live on the real market?
One possible way to solve this problem is what we call a synthetic market, built with the help of artificial intelligence (AI). Recurrent neural networks (in particular Long short-term memory neural networks) are very powerful tools for recognizing and learning patterns evolved with time.
In this talk we will show:
- how a suitable neural network can be created in Python using keras package with Tensorflow backend;
- how it can be trained to learn the behavior of a real energy exchange;
- how it generates market activities emulating the exchange.
This will enable us to test trading ideas in a more realistic simulated environment, and also to utilize AI for creating more sophisticated trading algorithms.
Larisa Chizhova Data Scientist, VisoTech
After more than 12 years of teaching python to children of all ages, i have gained some experience of what works and what does not work. This talks focus on things that did not worked out well, hopefully helping others to avoid my mistakes and learn from them.
The presentation focuses on the Open Election Data API, an open source web-app, in which we offer historical election results to the public in an open, standardized and free way. The API is implemented with Django and it's REST framework, and offers the results as OpenAPI 3.0 specification JSON on the web. You will get a basic understanding, how to implement an open, standardized API with Django and understand the processes behind elections a bit better. At the end, there will be a Q&A.
GNU Radio is Python based framework for Software Defined Radio (SDR). Using this framework and cheap USB dongle, one is able to explore magnificent world of modern radio communications, from receiving VHF stations to detecting airplanes in our vicinity, from listening to the weather satellites to GSM sniffing.
This talk will provide useful and practical understanding on how to build industry-ready machine learning frameworks in python through distributed, horizontally-scalable architectures. This talk will also go into detail on the motivations for such architectures, the technologies required, best practices, caveats and practical use-cases in industry.
Alejandro Saucedo ,
Alejandro is the CTO at Exponential Technologies, a Machine Learning and DevOps consultancy. He is currently the head of an engineering department at Eigen Technologies, a Machine Learning LegalTech company, leading multiple teams of ML and DevOps engineers across London and New York, working with some of the top investment banks and magic circle law firms. He is a Fellow for AI, Data & Machine Learning at The RSA, where he is setting up a Think-tank focused on accelerating the creation of effective policy to ensure safe & ethical development of ML. He previously co-founded HackTrain, a technology consultancy that operated in the railway sector, worked as an engineer at Bloomberg LP, and started a global NGO that created multiple developer communities around the world that are still active to date.
The ZODB is a mature graph database written in Python and optimized in C. Just subclass off of class Persistent Object, and Persistent Container, and your objects, graphs and applications become persistent. Graph databases are now hot in the market, but mostly written in Java. This talk teaches you what you need to know to start using a pythonic graph database. Your developers and users will both find the experience more enjoyable.
Christopher Lozinski ZODB: A graph database for Python Developers,
Christopher Lozinski is an MIT graduate, serial entrepreneur, dual US-EU citizen, and polyglot. Instead of seeking Venture Capital, he moved from Silicon Valley to Poland. He started using the ZODB in 1999, built a number of products with it, most recently PythonLinks.info, and has now released the open source ZodbDemo.
ReportBro is an Open Source toolkit that allows to easily create professional PDF and Excel reports. It consists of a JavaScript plugin and a Python library. The JavaScript plugin for visually designing templates can be integrated into any kind of web application. The Python library processes templates to generate awesome reports.
Have you ever tried to define and process complex workflows for data processing? If the answer is yes, you might have struggled to find the right framework for that. You've probably came across Celery - popular task flow management for Python. Celery is great, but it does not provide enough flexibility and dynamic features needed badly in complex flows. As we discovered all the limitations, we decided to implement Selinon.
Docker is a powerful dev ops tool to simplify deployment and setup. I will present the general idea of docker and then how we can use it to deploy python apps. Next, I will go through a basic example of deploying a flask app with docker. I will then show how we can optimise our image with multistage builds. After that, we will see how we can use CircleCI, dockerhub, and source control to have our image built and tested automatically. Finally we will go over how we can orchestrate multiple containers, auto-restart our containers, and horizontally scale our containers with Kubernetes. For an outline of workshop as well as information regarding the setup see here. Things you will need to install (preferably on mac or linux machine): - Docker - Flask - minikube - kubectl Accounts you will need: - Docker Hub - GitHub/Bitbucket - CircleCI
One of the pillars of science is reproducibility. If a paper is published, peers need to be able to review and reenact the research and should come to the same conclusions. Data science can be defined as the application of the scientific method to business data. Regardless of the circumstances, if you try to answer the same question using the same techniques and data, your answer shouldn’t change over time. There are a number of ways to achieve reproducibility, some are organisational, some are more technical. In this talk, we want to present why Python’s virtual environments are useful to that end, how to set them up, and when to use the various containerisation / environment tools to foster reproducibility.
Clemens Zauchner Data Scientist, Unbelievable Machine Company
Studied business informatics in Innsbruck and data science in London. Worked with companies like OMV, easyJet, and Sainsbury’s. Currently Data Scientist @ The Unbelievable Machine Company. Co-author of open source R package tableHTML, a tool to create and style HTML tables from R.
This talk will be about available IoT hardware and how to use them for embedded wardriving. Goal is to collect wifi information while on the run, without the need of a PC or smartphone. I'll demonstrate how to do this using an GPS-enabled shield from pycom.
In this workshop we'll use some example data and show how Python, Pandas, and Jupyter can be used to analyse and visualize data. Topics: - Working efficiently with Jupyter - Import and export of datasets - Descriptive statistics - Working with Pandas - Visualization with matpotlib Attendees should already install the required software before the workshop. Detailed instructions can be found here: https://gitlab.com/seelmann/jupyter-workshop-pyvie2018. As fallback an online installation will be provided.